\section{ecrt.\+h File Reference}
\label{ecrt_8h}\index{ecrt.\+h@{ecrt.\+h}}


Ether\+C\+AT master application interface.  


\subsection*{Data Structures}
\begin{DoxyCompactItemize}
\item 
struct \textbf{ ec\+\_\+master\+\_\+state\+\_\+t}
\begin{DoxyCompactList}\small\item\em Master state. \end{DoxyCompactList}\item 
struct \textbf{ ec\+\_\+master\+\_\+link\+\_\+state\+\_\+t}
\begin{DoxyCompactList}\small\item\em Redundant link state. \end{DoxyCompactList}\item 
struct \textbf{ ec\+\_\+slave\+\_\+config\+\_\+state\+\_\+t}
\begin{DoxyCompactList}\small\item\em Slave configuration state. \end{DoxyCompactList}\item 
struct \textbf{ ec\+\_\+master\+\_\+info\+\_\+t}
\begin{DoxyCompactList}\small\item\em Master information. \end{DoxyCompactList}\item 
struct \textbf{ ec\+\_\+slave\+\_\+port\+\_\+link\+\_\+t}
\begin{DoxyCompactList}\small\item\em Ether\+C\+AT slave port information. \end{DoxyCompactList}\item 
struct \textbf{ ec\+\_\+slave\+\_\+info\+\_\+t}
\begin{DoxyCompactList}\small\item\em Slave information. \end{DoxyCompactList}\item 
struct \textbf{ ec\+\_\+domain\+\_\+state\+\_\+t}
\begin{DoxyCompactList}\small\item\em Domain state. \end{DoxyCompactList}\item 
struct \textbf{ ec\+\_\+pdo\+\_\+entry\+\_\+info\+\_\+t}
\begin{DoxyCompactList}\small\item\em P\+DO entry configuration information. \end{DoxyCompactList}\item 
struct \textbf{ ec\+\_\+pdo\+\_\+info\+\_\+t}
\begin{DoxyCompactList}\small\item\em P\+DO configuration information. \end{DoxyCompactList}\item 
struct \textbf{ ec\+\_\+sync\+\_\+info\+\_\+t}
\begin{DoxyCompactList}\small\item\em Sync manager configuration information. \end{DoxyCompactList}\item 
struct \textbf{ ec\+\_\+pdo\+\_\+entry\+\_\+reg\+\_\+t}
\begin{DoxyCompactList}\small\item\em List record type for P\+DO entry mass-\/registration. \end{DoxyCompactList}\end{DoxyCompactItemize}
\subsection*{Macros}
\begin{DoxyCompactItemize}
\item 
\#define \textbf{ E\+C\+R\+T\+\_\+\+V\+E\+R\+\_\+\+M\+A\+J\+OR}~1
\begin{DoxyCompactList}\small\item\em Ether\+C\+AT realtime interface major version number. \end{DoxyCompactList}\item 
\#define \textbf{ E\+C\+R\+T\+\_\+\+V\+E\+R\+\_\+\+M\+I\+N\+OR}~5
\begin{DoxyCompactList}\small\item\em Ether\+C\+AT realtime interface minor version number. \end{DoxyCompactList}\item 
\#define \textbf{ E\+C\+R\+T\+\_\+\+V\+E\+R\+S\+I\+ON}(a,  b)~(((a) $<$$<$ 8) + (b))
\begin{DoxyCompactList}\small\item\em Ether\+C\+AT realtime interface version word generator. \end{DoxyCompactList}\item 
\#define \textbf{ E\+C\+R\+T\+\_\+\+V\+E\+R\+S\+I\+O\+N\+\_\+\+M\+A\+G\+IC}~\textbf{ E\+C\+R\+T\+\_\+\+V\+E\+R\+S\+I\+ON}(\textbf{ E\+C\+R\+T\+\_\+\+V\+E\+R\+\_\+\+M\+A\+J\+OR}, \textbf{ E\+C\+R\+T\+\_\+\+V\+E\+R\+\_\+\+M\+I\+N\+OR})
\begin{DoxyCompactList}\small\item\em Ether\+C\+AT realtime interface version word. \end{DoxyCompactList}\item 
\#define \textbf{ E\+C\+\_\+\+H\+A\+V\+E\+\_\+\+R\+E\+D\+U\+N\+D\+A\+N\+CY}
\begin{DoxyCompactList}\small\item\em Defined, if the redundancy features are available. \end{DoxyCompactList}\item 
\#define \textbf{ E\+C\+\_\+\+H\+A\+V\+E\+\_\+\+E\+M\+E\+R\+G\+E\+N\+CY}
\begin{DoxyCompactList}\small\item\em Defined, if the CoE emergency ring feature is available. \end{DoxyCompactList}\item 
\#define \textbf{ E\+C\+\_\+\+H\+A\+V\+E\+\_\+\+R\+E\+G\+\_\+\+A\+C\+C\+E\+SS}
\begin{DoxyCompactList}\small\item\em Defined, if the register access interface is available. \end{DoxyCompactList}\item 
\#define \textbf{ E\+C\+\_\+\+H\+A\+V\+E\+\_\+\+S\+E\+L\+E\+C\+T\+\_\+\+R\+E\+F\+\_\+\+C\+L\+O\+CK}
\begin{DoxyCompactList}\small\item\em Defined if the method \doxyref{ecrt\+\_\+master\+\_\+select\+\_\+reference\+\_\+clock()}{p.}{group__ApplicationInterface_ga31983aeee279fc5acaf5f7a0bb403160} is available. \end{DoxyCompactList}\item 
\#define \textbf{ E\+C\+\_\+\+H\+A\+V\+E\+\_\+\+R\+E\+F\+\_\+\+C\+L\+O\+C\+K\+\_\+\+T\+I\+ME}
\begin{DoxyCompactList}\small\item\em Defined if the method \doxyref{ecrt\+\_\+master\+\_\+reference\+\_\+clock\+\_\+time()}{p.}{group__ApplicationInterface_gaefb582f13442ef8b770fd308b8de949c} is available. \end{DoxyCompactList}\item 
\#define \textbf{ E\+C\+\_\+\+H\+A\+V\+E\+\_\+\+R\+E\+G\+\_\+\+B\+Y\+\_\+\+P\+OS}
\begin{DoxyCompactList}\small\item\em Defined if the method \doxyref{ecrt\+\_\+slave\+\_\+config\+\_\+reg\+\_\+pdo\+\_\+entry\+\_\+pos()}{p.}{group__ApplicationInterface_ga757fd3d421f1ded8ee310c4698afb8ba} is available. \end{DoxyCompactList}\item 
\#define \textbf{ E\+C\+\_\+\+E\+ND}~$\sim$0U
\begin{DoxyCompactList}\small\item\em End of list marker. \end{DoxyCompactList}\item 
\#define \textbf{ E\+C\+\_\+\+M\+A\+X\+\_\+\+S\+Y\+N\+C\+\_\+\+M\+A\+N\+A\+G\+E\+RS}~16
\begin{DoxyCompactList}\small\item\em Maximum number of sync managers per slave. \end{DoxyCompactList}\item 
\#define \textbf{ E\+C\+\_\+\+M\+A\+X\+\_\+\+S\+T\+R\+I\+N\+G\+\_\+\+L\+E\+N\+G\+TH}~64
\begin{DoxyCompactList}\small\item\em Maximum string length. \end{DoxyCompactList}\item 
\#define \textbf{ E\+C\+\_\+\+M\+A\+X\+\_\+\+P\+O\+R\+TS}~4
\begin{DoxyCompactList}\small\item\em Maximum number of slave ports. \end{DoxyCompactList}\item 
\#define \textbf{ E\+C\+\_\+\+T\+I\+M\+E\+V\+A\+L2\+N\+A\+NO}(TV)~(((TV).tv\+\_\+sec -\/ 946684800\+U\+L\+L) $\ast$ 1000000000\+U\+L\+L + (\+T\+V).\+tv\+\_\+usec $\ast$ 1000\+U\+L\+L)
\begin{DoxyCompactList}\small\item\em Timeval to nanoseconds conversion. \end{DoxyCompactList}\item 
\#define \textbf{ E\+C\+\_\+\+C\+O\+E\+\_\+\+E\+M\+E\+R\+G\+E\+N\+C\+Y\+\_\+\+M\+S\+G\+\_\+\+S\+I\+ZE}~8
\begin{DoxyCompactList}\small\item\em Size of a CoE emergency message in byte. \end{DoxyCompactList}\item 
\#define \textbf{ E\+C\+\_\+\+R\+E\+A\+D\+\_\+\+B\+IT}(D\+A\+TA,  P\+OS)~(($\ast$((uint8\+\_\+t $\ast$) (D\+A\+TA)) $>$$>$ (P\+OS)) \& 0x01)
\begin{DoxyCompactList}\small\item\em Read a certain bit of an Ether\+C\+AT data byte. \end{DoxyCompactList}\item 
\#define \textbf{ E\+C\+\_\+\+W\+R\+I\+T\+E\+\_\+\+B\+IT}(D\+A\+TA,  P\+OS,  V\+AL)
\begin{DoxyCompactList}\small\item\em Write a certain bit of an Ether\+C\+AT data byte. \end{DoxyCompactList}\item 
\#define \textbf{ E\+C\+\_\+\+R\+E\+A\+D\+\_\+\+U8}(D\+A\+TA)~((uint8\+\_\+t) $\ast$((uint8\+\_\+t $\ast$) (D\+A\+TA)))
\begin{DoxyCompactList}\small\item\em Read an 8-\/bit unsigned value from Ether\+C\+AT data. \end{DoxyCompactList}\item 
\#define \textbf{ E\+C\+\_\+\+R\+E\+A\+D\+\_\+\+S8}(D\+A\+TA)~((int8\+\_\+t) $\ast$((uint8\+\_\+t $\ast$) (D\+A\+TA)))
\begin{DoxyCompactList}\small\item\em Read an 8-\/bit signed value from Ether\+C\+AT data. \end{DoxyCompactList}\item 
\#define \textbf{ E\+C\+\_\+\+R\+E\+A\+D\+\_\+\+U16}(D\+A\+TA)~((uint16\+\_\+t) le16\+\_\+to\+\_\+cpup((void $\ast$) (D\+A\+TA)))
\begin{DoxyCompactList}\small\item\em Read a 16-\/bit unsigned value from Ether\+C\+AT data. \end{DoxyCompactList}\item 
\#define \textbf{ E\+C\+\_\+\+R\+E\+A\+D\+\_\+\+S16}(D\+A\+TA)~((int16\+\_\+t) le16\+\_\+to\+\_\+cpup((void $\ast$) (D\+A\+TA)))
\begin{DoxyCompactList}\small\item\em Read a 16-\/bit signed value from Ether\+C\+AT data. \end{DoxyCompactList}\item 
\#define \textbf{ E\+C\+\_\+\+R\+E\+A\+D\+\_\+\+U32}(D\+A\+TA)~((uint32\+\_\+t) le32\+\_\+to\+\_\+cpup((void $\ast$) (D\+A\+TA)))
\begin{DoxyCompactList}\small\item\em Read a 32-\/bit unsigned value from Ether\+C\+AT data. \end{DoxyCompactList}\item 
\#define \textbf{ E\+C\+\_\+\+R\+E\+A\+D\+\_\+\+S32}(D\+A\+TA)~((int32\+\_\+t) le32\+\_\+to\+\_\+cpup((void $\ast$) (D\+A\+TA)))
\begin{DoxyCompactList}\small\item\em Read a 32-\/bit signed value from Ether\+C\+AT data. \end{DoxyCompactList}\item 
\#define \textbf{ E\+C\+\_\+\+R\+E\+A\+D\+\_\+\+U64}(D\+A\+TA)~((uint64\+\_\+t) le64\+\_\+to\+\_\+cpup((void $\ast$) (D\+A\+TA)))
\begin{DoxyCompactList}\small\item\em Read a 64-\/bit unsigned value from Ether\+C\+AT data. \end{DoxyCompactList}\item 
\#define \textbf{ E\+C\+\_\+\+R\+E\+A\+D\+\_\+\+S64}(D\+A\+TA)~((int64\+\_\+t) le64\+\_\+to\+\_\+cpup((void $\ast$) (D\+A\+TA)))
\begin{DoxyCompactList}\small\item\em Read a 64-\/bit signed value from Ether\+C\+AT data. \end{DoxyCompactList}\item 
\#define \textbf{ E\+C\+\_\+\+W\+R\+I\+T\+E\+\_\+\+U8}(D\+A\+TA,  V\+AL)
\begin{DoxyCompactList}\small\item\em Write an 8-\/bit unsigned value to Ether\+C\+AT data. \end{DoxyCompactList}\item 
\#define \textbf{ E\+C\+\_\+\+W\+R\+I\+T\+E\+\_\+\+S8}(D\+A\+TA,  V\+AL)~\textbf{ E\+C\+\_\+\+W\+R\+I\+T\+E\+\_\+\+U8}(D\+A\+TA, V\+AL)
\begin{DoxyCompactList}\small\item\em Write an 8-\/bit signed value to Ether\+C\+AT data. \end{DoxyCompactList}\item 
\#define \textbf{ E\+C\+\_\+\+W\+R\+I\+T\+E\+\_\+\+U16}(D\+A\+TA,  V\+AL)
\begin{DoxyCompactList}\small\item\em Write a 16-\/bit unsigned value to Ether\+C\+AT data. \end{DoxyCompactList}\item 
\#define \textbf{ E\+C\+\_\+\+W\+R\+I\+T\+E\+\_\+\+S16}(D\+A\+TA,  V\+AL)~\textbf{ E\+C\+\_\+\+W\+R\+I\+T\+E\+\_\+\+U16}(D\+A\+TA, V\+AL)
\begin{DoxyCompactList}\small\item\em Write a 16-\/bit signed value to Ether\+C\+AT data. \end{DoxyCompactList}\item 
\#define \textbf{ E\+C\+\_\+\+W\+R\+I\+T\+E\+\_\+\+U32}(D\+A\+TA,  V\+AL)
\begin{DoxyCompactList}\small\item\em Write a 32-\/bit unsigned value to Ether\+C\+AT data. \end{DoxyCompactList}\item 
\#define \textbf{ E\+C\+\_\+\+W\+R\+I\+T\+E\+\_\+\+S32}(D\+A\+TA,  V\+AL)~\textbf{ E\+C\+\_\+\+W\+R\+I\+T\+E\+\_\+\+U32}(D\+A\+TA, V\+AL)
\begin{DoxyCompactList}\small\item\em Write a 32-\/bit signed value to Ether\+C\+AT data. \end{DoxyCompactList}\item 
\#define \textbf{ E\+C\+\_\+\+W\+R\+I\+T\+E\+\_\+\+U64}(D\+A\+TA,  V\+AL)
\begin{DoxyCompactList}\small\item\em Write a 64-\/bit unsigned value to Ether\+C\+AT data. \end{DoxyCompactList}\item 
\#define \textbf{ E\+C\+\_\+\+W\+R\+I\+T\+E\+\_\+\+S64}(D\+A\+TA,  V\+AL)~\textbf{ E\+C\+\_\+\+W\+R\+I\+T\+E\+\_\+\+U64}(D\+A\+TA, V\+AL)
\begin{DoxyCompactList}\small\item\em Write a 64-\/bit signed value to Ether\+C\+AT data. \end{DoxyCompactList}\end{DoxyCompactItemize}
\subsection*{Typedefs}
\begin{DoxyCompactItemize}
\item 
typedef struct \textbf{ ec\+\_\+master} \textbf{ ec\+\_\+master\+\_\+t}
\item 
typedef struct \textbf{ ec\+\_\+slave\+\_\+config} \textbf{ ec\+\_\+slave\+\_\+config\+\_\+t}
\item 
typedef struct \textbf{ ec\+\_\+domain} \textbf{ ec\+\_\+domain\+\_\+t}
\item 
typedef struct \textbf{ ec\+\_\+sdo\+\_\+request} \textbf{ ec\+\_\+sdo\+\_\+request\+\_\+t}
\item 
typedef struct \textbf{ ec\+\_\+voe\+\_\+handler} \textbf{ ec\+\_\+voe\+\_\+handler\+\_\+t}
\item 
typedef struct \textbf{ ec\+\_\+reg\+\_\+request} \textbf{ ec\+\_\+reg\+\_\+request\+\_\+t}
\end{DoxyCompactItemize}
\subsection*{Enumerations}
\begin{DoxyCompactItemize}
\item 
enum \textbf{ ec\+\_\+slave\+\_\+port\+\_\+desc\+\_\+t} \{ \textbf{ E\+C\+\_\+\+P\+O\+R\+T\+\_\+\+N\+O\+T\+\_\+\+I\+M\+P\+L\+E\+M\+E\+N\+T\+ED}, 
\textbf{ E\+C\+\_\+\+P\+O\+R\+T\+\_\+\+N\+O\+T\+\_\+\+C\+O\+N\+F\+I\+G\+U\+R\+ED}, 
\textbf{ E\+C\+\_\+\+P\+O\+R\+T\+\_\+\+E\+B\+US}, 
\textbf{ E\+C\+\_\+\+P\+O\+R\+T\+\_\+\+M\+II}
 \}\begin{DoxyCompactList}\small\item\em Ether\+C\+AT slave port descriptor. \end{DoxyCompactList}
\item 
enum \textbf{ ec\+\_\+wc\+\_\+state\+\_\+t} \{ \textbf{ E\+C\+\_\+\+W\+C\+\_\+\+Z\+E\+RO} = 0, 
\textbf{ E\+C\+\_\+\+W\+C\+\_\+\+I\+N\+C\+O\+M\+P\+L\+E\+TE}, 
\textbf{ E\+C\+\_\+\+W\+C\+\_\+\+C\+O\+M\+P\+L\+E\+TE}
 \}\begin{DoxyCompactList}\small\item\em Domain working counter interpretation. \end{DoxyCompactList}
\item 
enum \textbf{ ec\+\_\+direction\+\_\+t} \{ \textbf{ E\+C\+\_\+\+D\+I\+R\+\_\+\+I\+N\+V\+A\+L\+ID}, 
\textbf{ E\+C\+\_\+\+D\+I\+R\+\_\+\+O\+U\+T\+P\+UT}, 
\textbf{ E\+C\+\_\+\+D\+I\+R\+\_\+\+I\+N\+P\+UT}, 
\textbf{ E\+C\+\_\+\+D\+I\+R\+\_\+\+C\+O\+U\+NT}
 \}\begin{DoxyCompactList}\small\item\em Direction type for P\+DO assignment functions. \end{DoxyCompactList}
\item 
enum \textbf{ ec\+\_\+watchdog\+\_\+mode\+\_\+t} \{ \textbf{ E\+C\+\_\+\+W\+D\+\_\+\+D\+E\+F\+A\+U\+LT}, 
\textbf{ E\+C\+\_\+\+W\+D\+\_\+\+E\+N\+A\+B\+LE}, 
\textbf{ E\+C\+\_\+\+W\+D\+\_\+\+D\+I\+S\+A\+B\+LE}
 \}\begin{DoxyCompactList}\small\item\em Watchdog mode for sync manager configuration. \end{DoxyCompactList}
\item 
enum \textbf{ ec\+\_\+request\+\_\+state\+\_\+t} \{ \textbf{ E\+C\+\_\+\+R\+E\+Q\+U\+E\+S\+T\+\_\+\+U\+N\+U\+S\+ED}, 
\textbf{ E\+C\+\_\+\+R\+E\+Q\+U\+E\+S\+T\+\_\+\+B\+U\+SY}, 
\textbf{ E\+C\+\_\+\+R\+E\+Q\+U\+E\+S\+T\+\_\+\+S\+U\+C\+C\+E\+SS}, 
\textbf{ E\+C\+\_\+\+R\+E\+Q\+U\+E\+S\+T\+\_\+\+E\+R\+R\+OR}
 \}\begin{DoxyCompactList}\small\item\em Request state. \end{DoxyCompactList}
\item 
enum \textbf{ ec\+\_\+al\+\_\+state\+\_\+t} \{ \textbf{ E\+C\+\_\+\+A\+L\+\_\+\+S\+T\+A\+T\+E\+\_\+\+I\+N\+IT} = 1, 
\textbf{ E\+C\+\_\+\+A\+L\+\_\+\+S\+T\+A\+T\+E\+\_\+\+P\+R\+E\+OP} = 2, 
\textbf{ E\+C\+\_\+\+A\+L\+\_\+\+S\+T\+A\+T\+E\+\_\+\+S\+A\+F\+E\+OP} = 4, 
\textbf{ E\+C\+\_\+\+A\+L\+\_\+\+S\+T\+A\+T\+E\+\_\+\+OP} = 8
 \}\begin{DoxyCompactList}\small\item\em Application-\/layer state. \end{DoxyCompactList}
\end{DoxyCompactItemize}
\subsection*{Functions}
\begin{DoxyCompactItemize}
\item 
unsigned int \textbf{ ecrt\+\_\+version\+\_\+magic} (void)
\begin{DoxyCompactList}\small\item\em Returns the version magic of the realtime interface. \end{DoxyCompactList}\item 
\textbf{ ec\+\_\+master\+\_\+t} $\ast$ \textbf{ ecrt\+\_\+request\+\_\+master} (unsigned int master\+\_\+index)
\begin{DoxyCompactList}\small\item\em Requests an Ether\+C\+AT master for realtime operation. \end{DoxyCompactList}\item 
void \textbf{ ecrt\+\_\+release\+\_\+master} (\textbf{ ec\+\_\+master\+\_\+t} $\ast$master)
\begin{DoxyCompactList}\small\item\em Releases a requested Ether\+C\+AT master. \end{DoxyCompactList}\item 
void \textbf{ ecrt\+\_\+master\+\_\+callbacks} (\textbf{ ec\+\_\+master\+\_\+t} $\ast$master, void($\ast$send\+\_\+cb)(void $\ast$), void($\ast$receive\+\_\+cb)(void $\ast$), void $\ast$cb\+\_\+data)
\begin{DoxyCompactList}\small\item\em Sets the locking callbacks. \end{DoxyCompactList}\item 
\textbf{ ec\+\_\+domain\+\_\+t} $\ast$ \textbf{ ecrt\+\_\+master\+\_\+create\+\_\+domain} (\textbf{ ec\+\_\+master\+\_\+t} $\ast$master)
\begin{DoxyCompactList}\small\item\em Creates a new process data domain. \end{DoxyCompactList}\item 
\textbf{ ec\+\_\+slave\+\_\+config\+\_\+t} $\ast$ \textbf{ ecrt\+\_\+master\+\_\+slave\+\_\+config} (\textbf{ ec\+\_\+master\+\_\+t} $\ast$master, uint16\+\_\+t alias, uint16\+\_\+t position, uint32\+\_\+t vendor\+\_\+id, uint32\+\_\+t product\+\_\+code)
\begin{DoxyCompactList}\small\item\em Obtains a slave configuration. \end{DoxyCompactList}\item 
int \textbf{ ecrt\+\_\+master\+\_\+select\+\_\+reference\+\_\+clock} (\textbf{ ec\+\_\+master\+\_\+t} $\ast$master, \textbf{ ec\+\_\+slave\+\_\+config\+\_\+t} $\ast$sc)
\begin{DoxyCompactList}\small\item\em Selects the reference clock for distributed clocks. \end{DoxyCompactList}\item 
int \textbf{ ecrt\+\_\+master} (\textbf{ ec\+\_\+master\+\_\+t} $\ast$master, \textbf{ ec\+\_\+master\+\_\+info\+\_\+t} $\ast$master\+\_\+info)
\begin{DoxyCompactList}\small\item\em Obtains master information. \end{DoxyCompactList}\item 
int \textbf{ ecrt\+\_\+master\+\_\+get\+\_\+slave} (\textbf{ ec\+\_\+master\+\_\+t} $\ast$master, uint16\+\_\+t slave\+\_\+position, \textbf{ ec\+\_\+slave\+\_\+info\+\_\+t} $\ast$slave\+\_\+info)
\begin{DoxyCompactList}\small\item\em Obtains slave information. \end{DoxyCompactList}\item 
int \textbf{ ecrt\+\_\+master\+\_\+sdo\+\_\+download} (\textbf{ ec\+\_\+master\+\_\+t} $\ast$master, uint16\+\_\+t slave\+\_\+position, uint16\+\_\+t index, uint8\+\_\+t subindex, uint8\+\_\+t $\ast$data, size\+\_\+t data\+\_\+size, uint32\+\_\+t $\ast$abort\+\_\+code)
\begin{DoxyCompactList}\small\item\em Executes an S\+DO download request to write data to a slave. \end{DoxyCompactList}\item 
int \textbf{ ecrt\+\_\+master\+\_\+sdo\+\_\+download\+\_\+complete} (\textbf{ ec\+\_\+master\+\_\+t} $\ast$master, uint16\+\_\+t slave\+\_\+position, uint16\+\_\+t index, uint8\+\_\+t $\ast$data, size\+\_\+t data\+\_\+size, uint32\+\_\+t $\ast$abort\+\_\+code)
\begin{DoxyCompactList}\small\item\em Executes an S\+DO download request to write data to a slave via complete access. \end{DoxyCompactList}\item 
int \textbf{ ecrt\+\_\+master\+\_\+sdo\+\_\+upload} (\textbf{ ec\+\_\+master\+\_\+t} $\ast$master, uint16\+\_\+t slave\+\_\+position, uint16\+\_\+t index, uint8\+\_\+t subindex, uint8\+\_\+t $\ast$target, size\+\_\+t target\+\_\+size, size\+\_\+t $\ast$result\+\_\+size, uint32\+\_\+t $\ast$abort\+\_\+code)
\begin{DoxyCompactList}\small\item\em Executes an S\+DO upload request to read data from a slave. \end{DoxyCompactList}\item 
int \textbf{ ecrt\+\_\+master\+\_\+write\+\_\+idn} (\textbf{ ec\+\_\+master\+\_\+t} $\ast$master, uint16\+\_\+t slave\+\_\+position, uint8\+\_\+t drive\+\_\+no, uint16\+\_\+t idn, uint8\+\_\+t $\ast$data, size\+\_\+t data\+\_\+size, uint16\+\_\+t $\ast$error\+\_\+code)
\begin{DoxyCompactList}\small\item\em Executes an SoE write request. \end{DoxyCompactList}\item 
int \textbf{ ecrt\+\_\+master\+\_\+read\+\_\+idn} (\textbf{ ec\+\_\+master\+\_\+t} $\ast$master, uint16\+\_\+t slave\+\_\+position, uint8\+\_\+t drive\+\_\+no, uint16\+\_\+t idn, uint8\+\_\+t $\ast$target, size\+\_\+t target\+\_\+size, size\+\_\+t $\ast$result\+\_\+size, uint16\+\_\+t $\ast$error\+\_\+code)
\begin{DoxyCompactList}\small\item\em Executes an SoE read request. \end{DoxyCompactList}\item 
int \textbf{ ecrt\+\_\+master\+\_\+activate} (\textbf{ ec\+\_\+master\+\_\+t} $\ast$master)
\begin{DoxyCompactList}\small\item\em Finishes the configuration phase and prepares for cyclic operation. \end{DoxyCompactList}\item 
void \textbf{ ecrt\+\_\+master\+\_\+deactivate} (\textbf{ ec\+\_\+master\+\_\+t} $\ast$master)
\begin{DoxyCompactList}\small\item\em Deactivates the master. \end{DoxyCompactList}\item 
int \textbf{ ecrt\+\_\+master\+\_\+set\+\_\+send\+\_\+interval} (\textbf{ ec\+\_\+master\+\_\+t} $\ast$master, size\+\_\+t send\+\_\+interval)
\begin{DoxyCompactList}\small\item\em Set interval between calls to \doxyref{ecrt\+\_\+master\+\_\+send()}{p.}{group__ApplicationInterface_ga453f787866ee66afb98130cf4723762d}. \end{DoxyCompactList}\item 
void \textbf{ ecrt\+\_\+master\+\_\+send} (\textbf{ ec\+\_\+master\+\_\+t} $\ast$master)
\begin{DoxyCompactList}\small\item\em Sends all datagrams in the queue. \end{DoxyCompactList}\item 
void \textbf{ ecrt\+\_\+master\+\_\+receive} (\textbf{ ec\+\_\+master\+\_\+t} $\ast$master)
\begin{DoxyCompactList}\small\item\em Fetches received frames from the hardware and processes the datagrams. \end{DoxyCompactList}\item 
void \textbf{ ecrt\+\_\+master\+\_\+send\+\_\+ext} (\textbf{ ec\+\_\+master\+\_\+t} $\ast$master)
\begin{DoxyCompactList}\small\item\em Sends non-\/application datagrams. \end{DoxyCompactList}\item 
void \textbf{ ecrt\+\_\+master\+\_\+state} (const \textbf{ ec\+\_\+master\+\_\+t} $\ast$master, \textbf{ ec\+\_\+master\+\_\+state\+\_\+t} $\ast$state)
\begin{DoxyCompactList}\small\item\em Reads the current master state. \end{DoxyCompactList}\item 
int \textbf{ ecrt\+\_\+master\+\_\+link\+\_\+state} (const \textbf{ ec\+\_\+master\+\_\+t} $\ast$master, unsigned int dev\+\_\+idx, \textbf{ ec\+\_\+master\+\_\+link\+\_\+state\+\_\+t} $\ast$state)
\begin{DoxyCompactList}\small\item\em Reads the current state of a redundant link. \end{DoxyCompactList}\item 
void \textbf{ ecrt\+\_\+master\+\_\+application\+\_\+time} (\textbf{ ec\+\_\+master\+\_\+t} $\ast$master, uint64\+\_\+t app\+\_\+time)
\begin{DoxyCompactList}\small\item\em Sets the application time. \end{DoxyCompactList}\item 
void \textbf{ ecrt\+\_\+master\+\_\+sync\+\_\+reference\+\_\+clock} (\textbf{ ec\+\_\+master\+\_\+t} $\ast$master)
\begin{DoxyCompactList}\small\item\em Queues the DC reference clock drift compensation datagram for sending. \end{DoxyCompactList}\item 
void \textbf{ ecrt\+\_\+master\+\_\+sync\+\_\+slave\+\_\+clocks} (\textbf{ ec\+\_\+master\+\_\+t} $\ast$master)
\begin{DoxyCompactList}\small\item\em Queues the DC clock drift compensation datagram for sending. \end{DoxyCompactList}\item 
int \textbf{ ecrt\+\_\+master\+\_\+reference\+\_\+clock\+\_\+time} (\textbf{ ec\+\_\+master\+\_\+t} $\ast$master, uint32\+\_\+t $\ast$time)
\begin{DoxyCompactList}\small\item\em Get the lower 32 bit of the reference clock system time. \end{DoxyCompactList}\item 
void \textbf{ ecrt\+\_\+master\+\_\+sync\+\_\+monitor\+\_\+queue} (\textbf{ ec\+\_\+master\+\_\+t} $\ast$master)
\begin{DoxyCompactList}\small\item\em Queues the DC synchrony monitoring datagram for sending. \end{DoxyCompactList}\item 
uint32\+\_\+t \textbf{ ecrt\+\_\+master\+\_\+sync\+\_\+monitor\+\_\+process} (\textbf{ ec\+\_\+master\+\_\+t} $\ast$master)
\begin{DoxyCompactList}\small\item\em Processes the DC synchrony monitoring datagram. \end{DoxyCompactList}\item 
void \textbf{ ecrt\+\_\+master\+\_\+reset} (\textbf{ ec\+\_\+master\+\_\+t} $\ast$master)
\begin{DoxyCompactList}\small\item\em Retry configuring slaves. \end{DoxyCompactList}\item 
int \textbf{ ecrt\+\_\+slave\+\_\+config\+\_\+sync\+\_\+manager} (\textbf{ ec\+\_\+slave\+\_\+config\+\_\+t} $\ast$sc, uint8\+\_\+t sync\+\_\+index, \textbf{ ec\+\_\+direction\+\_\+t} direction, \textbf{ ec\+\_\+watchdog\+\_\+mode\+\_\+t} watchdog\+\_\+mode)
\begin{DoxyCompactList}\small\item\em Configure a sync manager. \end{DoxyCompactList}\item 
void \textbf{ ecrt\+\_\+slave\+\_\+config\+\_\+watchdog} (\textbf{ ec\+\_\+slave\+\_\+config\+\_\+t} $\ast$sc, uint16\+\_\+t watchdog\+\_\+divider, uint16\+\_\+t watchdog\+\_\+intervals)
\begin{DoxyCompactList}\small\item\em Configure a slave\textquotesingle{}s watchdog times. \end{DoxyCompactList}\item 
int \textbf{ ecrt\+\_\+slave\+\_\+config\+\_\+pdo\+\_\+assign\+\_\+add} (\textbf{ ec\+\_\+slave\+\_\+config\+\_\+t} $\ast$sc, uint8\+\_\+t sync\+\_\+index, uint16\+\_\+t index)
\begin{DoxyCompactList}\small\item\em Add a P\+DO to a sync manager\textquotesingle{}s P\+DO assignment. \end{DoxyCompactList}\item 
void \textbf{ ecrt\+\_\+slave\+\_\+config\+\_\+pdo\+\_\+assign\+\_\+clear} (\textbf{ ec\+\_\+slave\+\_\+config\+\_\+t} $\ast$sc, uint8\+\_\+t sync\+\_\+index)
\begin{DoxyCompactList}\small\item\em Clear a sync manager\textquotesingle{}s P\+DO assignment. \end{DoxyCompactList}\item 
int \textbf{ ecrt\+\_\+slave\+\_\+config\+\_\+pdo\+\_\+mapping\+\_\+add} (\textbf{ ec\+\_\+slave\+\_\+config\+\_\+t} $\ast$sc, uint16\+\_\+t pdo\+\_\+index, uint16\+\_\+t entry\+\_\+index, uint8\+\_\+t entry\+\_\+subindex, uint8\+\_\+t entry\+\_\+bit\+\_\+length)
\begin{DoxyCompactList}\small\item\em Add a P\+DO entry to the given P\+DO\textquotesingle{}s mapping. \end{DoxyCompactList}\item 
void \textbf{ ecrt\+\_\+slave\+\_\+config\+\_\+pdo\+\_\+mapping\+\_\+clear} (\textbf{ ec\+\_\+slave\+\_\+config\+\_\+t} $\ast$sc, uint16\+\_\+t pdo\+\_\+index)
\begin{DoxyCompactList}\small\item\em Clear the mapping of a given P\+DO. \end{DoxyCompactList}\item 
int \textbf{ ecrt\+\_\+slave\+\_\+config\+\_\+pdos} (\textbf{ ec\+\_\+slave\+\_\+config\+\_\+t} $\ast$sc, unsigned int n\+\_\+syncs, const \textbf{ ec\+\_\+sync\+\_\+info\+\_\+t} syncs[$\,$])
\begin{DoxyCompactList}\small\item\em Specify a complete P\+DO configuration. \end{DoxyCompactList}\item 
int \textbf{ ecrt\+\_\+slave\+\_\+config\+\_\+reg\+\_\+pdo\+\_\+entry} (\textbf{ ec\+\_\+slave\+\_\+config\+\_\+t} $\ast$sc, uint16\+\_\+t entry\+\_\+index, uint8\+\_\+t entry\+\_\+subindex, \textbf{ ec\+\_\+domain\+\_\+t} $\ast$domain, unsigned int $\ast$bit\+\_\+position)
\begin{DoxyCompactList}\small\item\em Registers a P\+DO entry for process data exchange in a domain. \end{DoxyCompactList}\item 
int \textbf{ ecrt\+\_\+slave\+\_\+config\+\_\+reg\+\_\+pdo\+\_\+entry\+\_\+pos} (\textbf{ ec\+\_\+slave\+\_\+config\+\_\+t} $\ast$sc, uint8\+\_\+t sync\+\_\+index, unsigned int pdo\+\_\+pos, unsigned int entry\+\_\+pos, \textbf{ ec\+\_\+domain\+\_\+t} $\ast$domain, unsigned int $\ast$bit\+\_\+position)
\begin{DoxyCompactList}\small\item\em Registers a P\+DO entry using its position. \end{DoxyCompactList}\item 
void \textbf{ ecrt\+\_\+slave\+\_\+config\+\_\+dc} (\textbf{ ec\+\_\+slave\+\_\+config\+\_\+t} $\ast$sc, uint16\+\_\+t assign\+\_\+activate, uint32\+\_\+t sync0\+\_\+cycle, int32\+\_\+t sync0\+\_\+shift, uint32\+\_\+t sync1\+\_\+cycle, int32\+\_\+t sync1\+\_\+shift)
\begin{DoxyCompactList}\small\item\em Configure distributed clocks. \end{DoxyCompactList}\item 
int \textbf{ ecrt\+\_\+slave\+\_\+config\+\_\+sdo} (\textbf{ ec\+\_\+slave\+\_\+config\+\_\+t} $\ast$sc, uint16\+\_\+t index, uint8\+\_\+t subindex, const uint8\+\_\+t $\ast$data, size\+\_\+t size)
\begin{DoxyCompactList}\small\item\em Add an S\+DO configuration. \end{DoxyCompactList}\item 
int \textbf{ ecrt\+\_\+slave\+\_\+config\+\_\+sdo8} (\textbf{ ec\+\_\+slave\+\_\+config\+\_\+t} $\ast$sc, uint16\+\_\+t sdo\+\_\+index, uint8\+\_\+t sdo\+\_\+subindex, uint8\+\_\+t value)
\begin{DoxyCompactList}\small\item\em Add a configuration value for an 8-\/bit S\+DO. \end{DoxyCompactList}\item 
int \textbf{ ecrt\+\_\+slave\+\_\+config\+\_\+sdo16} (\textbf{ ec\+\_\+slave\+\_\+config\+\_\+t} $\ast$sc, uint16\+\_\+t sdo\+\_\+index, uint8\+\_\+t sdo\+\_\+subindex, uint16\+\_\+t value)
\begin{DoxyCompactList}\small\item\em Add a configuration value for a 16-\/bit S\+DO. \end{DoxyCompactList}\item 
int \textbf{ ecrt\+\_\+slave\+\_\+config\+\_\+sdo32} (\textbf{ ec\+\_\+slave\+\_\+config\+\_\+t} $\ast$sc, uint16\+\_\+t sdo\+\_\+index, uint8\+\_\+t sdo\+\_\+subindex, uint32\+\_\+t value)
\begin{DoxyCompactList}\small\item\em Add a configuration value for a 32-\/bit S\+DO. \end{DoxyCompactList}\item 
int \textbf{ ecrt\+\_\+slave\+\_\+config\+\_\+complete\+\_\+sdo} (\textbf{ ec\+\_\+slave\+\_\+config\+\_\+t} $\ast$sc, uint16\+\_\+t index, const uint8\+\_\+t $\ast$data, size\+\_\+t size)
\begin{DoxyCompactList}\small\item\em Add configuration data for a complete S\+DO. \end{DoxyCompactList}\item 
int \textbf{ ecrt\+\_\+slave\+\_\+config\+\_\+emerg\+\_\+size} (\textbf{ ec\+\_\+slave\+\_\+config\+\_\+t} $\ast$sc, size\+\_\+t elements)
\begin{DoxyCompactList}\small\item\em Set the size of the CoE emergency ring buffer. \end{DoxyCompactList}\item 
int \textbf{ ecrt\+\_\+slave\+\_\+config\+\_\+emerg\+\_\+pop} (\textbf{ ec\+\_\+slave\+\_\+config\+\_\+t} $\ast$sc, uint8\+\_\+t $\ast$target)
\begin{DoxyCompactList}\small\item\em Read and remove one record from the CoE emergency ring buffer. \end{DoxyCompactList}\item 
int \textbf{ ecrt\+\_\+slave\+\_\+config\+\_\+emerg\+\_\+clear} (\textbf{ ec\+\_\+slave\+\_\+config\+\_\+t} $\ast$sc)
\begin{DoxyCompactList}\small\item\em Clears CoE emergency ring buffer and the overrun counter. \end{DoxyCompactList}\item 
int \textbf{ ecrt\+\_\+slave\+\_\+config\+\_\+emerg\+\_\+overruns} (\textbf{ ec\+\_\+slave\+\_\+config\+\_\+t} $\ast$sc)
\begin{DoxyCompactList}\small\item\em Read the number of CoE emergency overruns. \end{DoxyCompactList}\item 
\textbf{ ec\+\_\+sdo\+\_\+request\+\_\+t} $\ast$ \textbf{ ecrt\+\_\+slave\+\_\+config\+\_\+create\+\_\+sdo\+\_\+request} (\textbf{ ec\+\_\+slave\+\_\+config\+\_\+t} $\ast$sc, uint16\+\_\+t index, uint8\+\_\+t subindex, size\+\_\+t size)
\begin{DoxyCompactList}\small\item\em Create an S\+DO request to exchange S\+D\+Os during realtime operation. \end{DoxyCompactList}\item 
\textbf{ ec\+\_\+voe\+\_\+handler\+\_\+t} $\ast$ \textbf{ ecrt\+\_\+slave\+\_\+config\+\_\+create\+\_\+voe\+\_\+handler} (\textbf{ ec\+\_\+slave\+\_\+config\+\_\+t} $\ast$sc, size\+\_\+t size)
\begin{DoxyCompactList}\small\item\em Create an VoE handler to exchange vendor-\/specific data during realtime operation. \end{DoxyCompactList}\item 
\textbf{ ec\+\_\+reg\+\_\+request\+\_\+t} $\ast$ \textbf{ ecrt\+\_\+slave\+\_\+config\+\_\+create\+\_\+reg\+\_\+request} (\textbf{ ec\+\_\+slave\+\_\+config\+\_\+t} $\ast$sc, size\+\_\+t size)
\begin{DoxyCompactList}\small\item\em Create a register request to exchange Ether\+C\+AT register contents during realtime operation. \end{DoxyCompactList}\item 
void \textbf{ ecrt\+\_\+slave\+\_\+config\+\_\+state} (const \textbf{ ec\+\_\+slave\+\_\+config\+\_\+t} $\ast$sc, \textbf{ ec\+\_\+slave\+\_\+config\+\_\+state\+\_\+t} $\ast$state)
\begin{DoxyCompactList}\small\item\em Outputs the state of the slave configuration. \end{DoxyCompactList}\item 
int \textbf{ ecrt\+\_\+slave\+\_\+config\+\_\+idn} (\textbf{ ec\+\_\+slave\+\_\+config\+\_\+t} $\ast$sc, uint8\+\_\+t drive\+\_\+no, uint16\+\_\+t idn, \textbf{ ec\+\_\+al\+\_\+state\+\_\+t} state, const uint8\+\_\+t $\ast$data, size\+\_\+t size)
\begin{DoxyCompactList}\small\item\em Add an SoE I\+DN configuration. \end{DoxyCompactList}\item 
int \textbf{ ecrt\+\_\+domain\+\_\+reg\+\_\+pdo\+\_\+entry\+\_\+list} (\textbf{ ec\+\_\+domain\+\_\+t} $\ast$domain, const \textbf{ ec\+\_\+pdo\+\_\+entry\+\_\+reg\+\_\+t} $\ast$pdo\+\_\+entry\+\_\+regs)
\begin{DoxyCompactList}\small\item\em Registers a bunch of P\+DO entries for a domain. \end{DoxyCompactList}\item 
size\+\_\+t \textbf{ ecrt\+\_\+domain\+\_\+size} (const \textbf{ ec\+\_\+domain\+\_\+t} $\ast$domain)
\begin{DoxyCompactList}\small\item\em Returns the current size of the domain\textquotesingle{}s process data. \end{DoxyCompactList}\item 
void \textbf{ ecrt\+\_\+domain\+\_\+external\+\_\+memory} (\textbf{ ec\+\_\+domain\+\_\+t} $\ast$domain, uint8\+\_\+t $\ast$memory)
\begin{DoxyCompactList}\small\item\em Provide external memory to store the domain\textquotesingle{}s process data. \end{DoxyCompactList}\item 
uint8\+\_\+t $\ast$ \textbf{ ecrt\+\_\+domain\+\_\+data} (\textbf{ ec\+\_\+domain\+\_\+t} $\ast$domain)
\begin{DoxyCompactList}\small\item\em Returns the domain\textquotesingle{}s process data. \end{DoxyCompactList}\item 
void \textbf{ ecrt\+\_\+domain\+\_\+process} (\textbf{ ec\+\_\+domain\+\_\+t} $\ast$domain)
\begin{DoxyCompactList}\small\item\em Determines the states of the domain\textquotesingle{}s datagrams. \end{DoxyCompactList}\item 
void \textbf{ ecrt\+\_\+domain\+\_\+queue} (\textbf{ ec\+\_\+domain\+\_\+t} $\ast$domain)
\begin{DoxyCompactList}\small\item\em (Re-\/)queues all domain datagrams in the master\textquotesingle{}s datagram queue. \end{DoxyCompactList}\item 
void \textbf{ ecrt\+\_\+domain\+\_\+state} (const \textbf{ ec\+\_\+domain\+\_\+t} $\ast$domain, \textbf{ ec\+\_\+domain\+\_\+state\+\_\+t} $\ast$state)
\begin{DoxyCompactList}\small\item\em Reads the state of a domain. \end{DoxyCompactList}\item 
void \textbf{ ecrt\+\_\+sdo\+\_\+request\+\_\+index} (\textbf{ ec\+\_\+sdo\+\_\+request\+\_\+t} $\ast$req, uint16\+\_\+t index, uint8\+\_\+t subindex)
\begin{DoxyCompactList}\small\item\em Set the S\+DO index and subindex. \end{DoxyCompactList}\item 
void \textbf{ ecrt\+\_\+sdo\+\_\+request\+\_\+timeout} (\textbf{ ec\+\_\+sdo\+\_\+request\+\_\+t} $\ast$req, uint32\+\_\+t timeout)
\begin{DoxyCompactList}\small\item\em Set the timeout for an S\+DO request. \end{DoxyCompactList}\item 
uint8\+\_\+t $\ast$ \textbf{ ecrt\+\_\+sdo\+\_\+request\+\_\+data} (\textbf{ ec\+\_\+sdo\+\_\+request\+\_\+t} $\ast$req)
\begin{DoxyCompactList}\small\item\em Access to the S\+DO request\textquotesingle{}s data. \end{DoxyCompactList}\item 
size\+\_\+t \textbf{ ecrt\+\_\+sdo\+\_\+request\+\_\+data\+\_\+size} (const \textbf{ ec\+\_\+sdo\+\_\+request\+\_\+t} $\ast$req)
\begin{DoxyCompactList}\small\item\em Returns the current S\+DO data size. \end{DoxyCompactList}\item 
\textbf{ ec\+\_\+request\+\_\+state\+\_\+t} \textbf{ ecrt\+\_\+sdo\+\_\+request\+\_\+state} (const \textbf{ ec\+\_\+sdo\+\_\+request\+\_\+t} $\ast$req)
\begin{DoxyCompactList}\small\item\em Get the current state of the S\+DO request. \end{DoxyCompactList}\item 
void \textbf{ ecrt\+\_\+sdo\+\_\+request\+\_\+write} (\textbf{ ec\+\_\+sdo\+\_\+request\+\_\+t} $\ast$req)
\begin{DoxyCompactList}\small\item\em Schedule an S\+DO write operation. \end{DoxyCompactList}\item 
void \textbf{ ecrt\+\_\+sdo\+\_\+request\+\_\+read} (\textbf{ ec\+\_\+sdo\+\_\+request\+\_\+t} $\ast$req)
\begin{DoxyCompactList}\small\item\em Schedule an S\+DO read operation. \end{DoxyCompactList}\item 
void \textbf{ ecrt\+\_\+voe\+\_\+handler\+\_\+send\+\_\+header} (\textbf{ ec\+\_\+voe\+\_\+handler\+\_\+t} $\ast$voe, uint32\+\_\+t vendor\+\_\+id, uint16\+\_\+t vendor\+\_\+type)
\begin{DoxyCompactList}\small\item\em Sets the VoE header for future send operations. \end{DoxyCompactList}\item 
void \textbf{ ecrt\+\_\+voe\+\_\+handler\+\_\+received\+\_\+header} (const \textbf{ ec\+\_\+voe\+\_\+handler\+\_\+t} $\ast$voe, uint32\+\_\+t $\ast$vendor\+\_\+id, uint16\+\_\+t $\ast$vendor\+\_\+type)
\begin{DoxyCompactList}\small\item\em Reads the header data of a received VoE message. \end{DoxyCompactList}\item 
uint8\+\_\+t $\ast$ \textbf{ ecrt\+\_\+voe\+\_\+handler\+\_\+data} (\textbf{ ec\+\_\+voe\+\_\+handler\+\_\+t} $\ast$voe)
\begin{DoxyCompactList}\small\item\em Access to the VoE handler\textquotesingle{}s data. \end{DoxyCompactList}\item 
size\+\_\+t \textbf{ ecrt\+\_\+voe\+\_\+handler\+\_\+data\+\_\+size} (const \textbf{ ec\+\_\+voe\+\_\+handler\+\_\+t} $\ast$voe)
\begin{DoxyCompactList}\small\item\em Returns the current data size. \end{DoxyCompactList}\item 
void \textbf{ ecrt\+\_\+voe\+\_\+handler\+\_\+write} (\textbf{ ec\+\_\+voe\+\_\+handler\+\_\+t} $\ast$voe, size\+\_\+t size)
\begin{DoxyCompactList}\small\item\em Start a VoE write operation. \end{DoxyCompactList}\item 
void \textbf{ ecrt\+\_\+voe\+\_\+handler\+\_\+read} (\textbf{ ec\+\_\+voe\+\_\+handler\+\_\+t} $\ast$voe)
\begin{DoxyCompactList}\small\item\em Start a VoE read operation. \end{DoxyCompactList}\item 
void \textbf{ ecrt\+\_\+voe\+\_\+handler\+\_\+read\+\_\+nosync} (\textbf{ ec\+\_\+voe\+\_\+handler\+\_\+t} $\ast$voe)
\begin{DoxyCompactList}\small\item\em Start a VoE read operation without querying the sync manager status. \end{DoxyCompactList}\item 
\textbf{ ec\+\_\+request\+\_\+state\+\_\+t} \textbf{ ecrt\+\_\+voe\+\_\+handler\+\_\+execute} (\textbf{ ec\+\_\+voe\+\_\+handler\+\_\+t} $\ast$voe)
\begin{DoxyCompactList}\small\item\em Execute the handler. \end{DoxyCompactList}\item 
uint8\+\_\+t $\ast$ \textbf{ ecrt\+\_\+reg\+\_\+request\+\_\+data} (\textbf{ ec\+\_\+reg\+\_\+request\+\_\+t} $\ast$req)
\begin{DoxyCompactList}\small\item\em Access to the register request\textquotesingle{}s data. \end{DoxyCompactList}\item 
\textbf{ ec\+\_\+request\+\_\+state\+\_\+t} \textbf{ ecrt\+\_\+reg\+\_\+request\+\_\+state} (const \textbf{ ec\+\_\+reg\+\_\+request\+\_\+t} $\ast$req)
\begin{DoxyCompactList}\small\item\em Get the current state of the register request. \end{DoxyCompactList}\item 
void \textbf{ ecrt\+\_\+reg\+\_\+request\+\_\+write} (\textbf{ ec\+\_\+reg\+\_\+request\+\_\+t} $\ast$req, uint16\+\_\+t address, size\+\_\+t size)
\begin{DoxyCompactList}\small\item\em Schedule an register write operation. \end{DoxyCompactList}\item 
void \textbf{ ecrt\+\_\+reg\+\_\+request\+\_\+read} (\textbf{ ec\+\_\+reg\+\_\+request\+\_\+t} $\ast$req, uint16\+\_\+t address, size\+\_\+t size)
\begin{DoxyCompactList}\small\item\em Schedule a register read operation. \end{DoxyCompactList}\end{DoxyCompactItemize}


\subsection{Detailed Description}
Ether\+C\+AT master application interface. 

